package com.gzx.plugin.website.protocol.service;

import com.gzx.plugin.website.protocol.bo.*;
import com.gzx.plugin.website.protocol.vo.GzxMediationProtocolOutVo;
import com.gzx.plugin.website.protocol.vo.GzxMediationProtocolVo;
import jakarta.servlet.http.HttpServletRequest;
import org.springframework.web.multipart.MultipartFile;
import vip.xiaonuo.common.mvc.service.BaseService;
import vip.xiaonuo.common.pojo.CommonResult;

import java.util.List;

/**
 * @author zjt
 * @description
 * @date 2025/4/15 15:53
 */
public interface GzxMediationProtocolService extends BaseService<GzxMediationProtocolAddOrEditBo, GzxMediationProtocolVo, GzxMediationProtocolQueryBo> {

    /**
     * 调解协议导入
     *
     * @param mediationProtocolImportAddBo
     * @param multipartFile
     */
    void importExcel(GzxMediationProtocolImportAddBo mediationProtocolImportAddBo, MultipartFile multipartFile);

    /**
     * 预览调解协议
     *
     * @param id
     * @return
     */
    GzxMediationProtocolOutVo preview(Long id);

    /**
     * 根据身份证号获取调解函数据
     *
     * @param mediationProtocolOutQueryBo
     * @param request
     * @return
     */
    CommonResult<List<GzxMediationProtocolOutVo>> selectListByDebtorCardId(GzxMediationProtocolOutQueryBo mediationProtocolOutQueryBo, HttpServletRequest request);

    /**
     * API调用生成调解函
     *
     * @param mediationProtocolExcelBoList
     */
    void apiGenerateProtocol(List<GzxMediationProtocolExcelBo> mediationProtocolExcelBoList, HttpServletRequest request);
}
